home *** CD-ROM | disk | FTP | other *** search
/ Champak 50 / Volume 50 - JOGO DISK .iso / Games / moonstonemadness.swf / scripts / __Packages / BaseLevelData.as next >
Encoding:
Text File  |  2007-09-27  |  6.0 KB  |  184 lines

  1. class BaseLevelData
  2. {
  3.    var aPanels;
  4.    var aPanelBg2;
  5.    var nRequiredMS;
  6.    var nCollectedMS;
  7.    var nMiniStones;
  8.    var nTimeTaken;
  9.    var bCompleted;
  10.    var bLocked;
  11.    var nLevelType;
  12.    var nLevelNumber;
  13.    var sLevelName;
  14.    var nTimeAllowed;
  15.    static var SECONDS = 1000;
  16.    static var MINUTES = 60 * BaseLevelData.SECONDS;
  17.    static var STATUS_COMPLETED = 1;
  18.    static var STATUS_INCOMPLETE = 2;
  19.    static var LEVEL_TYPE_STORY = 1;
  20.    static var LEVEL_TYPE_USER = 2;
  21.    static var POINTS_BASE = 50000;
  22.    static var POINTS_PER_MS_BASE = 750;
  23.    static var POINTS_PER_MS_OVER = 1500;
  24.    static var POINTS_PER_MINISTONES = 100;
  25.    static var POINTS_PER_MILLISECOND_REMAINING = 1.25;
  26.    function BaseLevelData()
  27.    {
  28.       this.aPanels = new Array();
  29.       this.aPanelBg2 = new Array();
  30.       this.nRequiredMS = 0;
  31.       this.nCollectedMS = 0;
  32.       this.nMiniStones = 0;
  33.       this.nTimeTaken = 0;
  34.       this.bCompleted = false;
  35.       this.bLocked = true;
  36.    }
  37.    function onInit()
  38.    {
  39.       var _loc2_ = SharedObject.getLocal(PlayerStatus.SAVE_SO_NAME);
  40.       if(_loc2_.data["LevelType" + this.nLevelType + "_LevelNumber" + this.nLevelNumber] != undefined)
  41.       {
  42.          this.bCompleted = _loc2_.data["LevelType" + this.nLevelType + "_LevelNumber" + this.nLevelNumber].bCompleted;
  43.          this.bLocked = _loc2_.data["LevelType" + this.nLevelType + "_LevelNumber" + this.nLevelNumber].bLocked;
  44.          this.nCollectedMS = _loc2_.data["LevelType" + this.nLevelType + "_LevelNumber" + this.nLevelNumber].nCollectedMS;
  45.          this.nMiniStones = _loc2_.data["LevelType" + this.nLevelType + "_LevelNumber" + this.nLevelNumber].nMiniStones;
  46.          this.nTimeTaken = _loc2_.data["LevelType" + this.nLevelType + "_LevelNumber" + this.nLevelNumber].nTimeTaken;
  47.       }
  48.       false;
  49.    }
  50.    function doSave()
  51.    {
  52.       var _loc2_ = SharedObject.getLocal(PlayerStatus.SAVE_SO_NAME);
  53.       _loc2_.data["LevelType" + this.nLevelType + "_LevelNumber" + this.nLevelNumber] = new Object();
  54.       _loc2_.data["LevelType" + this.nLevelType + "_LevelNumber" + this.nLevelNumber].bCompleted = this.bCompleted;
  55.       _loc2_.data["LevelType" + this.nLevelType + "_LevelNumber" + this.nLevelNumber].bLocked = this.bLocked;
  56.       _loc2_.data["LevelType" + this.nLevelType + "_LevelNumber" + this.nLevelNumber].nCollectedMS = this.nCollectedMS;
  57.       _loc2_.data["LevelType" + this.nLevelType + "_LevelNumber" + this.nLevelNumber].nMiniStones = this.nMiniStones;
  58.       _loc2_.data["LevelType" + this.nLevelType + "_LevelNumber" + this.nLevelNumber].nTimeTaken = this.nTimeTaken;
  59.       if(this.nLevelType == BaseLevelData.LEVEL_TYPE_USER)
  60.       {
  61.          _loc2_.data["LevelType" + this.nLevelType + "_LevelNumber" + this.nLevelNumber].nLevelNumber = this.nLevelNumber;
  62.          _loc2_.data["LevelType" + this.nLevelType + "_LevelNumber" + this.nLevelNumber].sLevelName = this.sLevelName;
  63.          _loc2_.data["LevelType" + this.nLevelType + "_LevelNumber" + this.nLevelNumber].nTimeAllowed = this.nTimeAllowed;
  64.          _loc2_.data["LevelType" + this.nLevelType + "_LevelNumber" + this.nLevelNumber].nRequiredMS = this.nRequiredMS;
  65.          _loc2_.data["LevelType" + this.nLevelType + "_LevelNumber" + this.nLevelNumber].aPanels = this.aPanels;
  66.       }
  67.       _loc2_.flush();
  68.       false;
  69.    }
  70.    function doDeleteFromSave()
  71.    {
  72.       var _loc2_ = SharedObject.getLocal(PlayerStatus.SAVE_SO_NAME);
  73.       delete _loc2_.data["LevelType" + this.nLevelType + "_LevelNumber" + this.nLevelNumber];
  74.       _loc2_.flush();
  75.       false;
  76.    }
  77.    function set LevelNumber(__nLevelNumber)
  78.    {
  79.       this.nLevelNumber = __nLevelNumber;
  80.    }
  81.    function get LevelNumber()
  82.    {
  83.       return this.nLevelNumber;
  84.    }
  85.    function set LevelName(__sLevelName)
  86.    {
  87.       this.sLevelName = __sLevelName;
  88.    }
  89.    function get LevelName()
  90.    {
  91.       var _loc2_ = this.sLevelName;
  92.       if(_loc2_ == undefined || _loc2_ == "")
  93.       {
  94.          _loc2_ = "Game " + this.LevelNumber;
  95.       }
  96.       return _loc2_;
  97.    }
  98.    function get Locked()
  99.    {
  100.       return this.bLocked;
  101.    }
  102.    function set Locked(__bLocked)
  103.    {
  104.       this.bLocked = __bLocked;
  105.    }
  106.    function get Completed()
  107.    {
  108.       return this.bCompleted;
  109.    }
  110.    function set Completed(__bCompleted)
  111.    {
  112.       this.bCompleted = __bCompleted;
  113.    }
  114.    function set LevelType(__nLevelType)
  115.    {
  116.       this.nLevelType = __nLevelType;
  117.    }
  118.    function get LevelType()
  119.    {
  120.       return this.nLevelType;
  121.    }
  122.    function get Panels()
  123.    {
  124.       return this.aPanels;
  125.    }
  126.    function set RequiredMS(__nRequiredMS)
  127.    {
  128.       this.nRequiredMS = __nRequiredMS;
  129.    }
  130.    function get RequiredMS()
  131.    {
  132.       return this.nRequiredMS;
  133.    }
  134.    function set CollectedMS(__nCollectedMS)
  135.    {
  136.       this.nCollectedMS = __nCollectedMS;
  137.    }
  138.    function get CollectedMS()
  139.    {
  140.       return this.nCollectedMS;
  141.    }
  142.    function set TimeAllowed(__nTimeAllowed)
  143.    {
  144.       this.nTimeAllowed = __nTimeAllowed;
  145.    }
  146.    function get TimeAllowed()
  147.    {
  148.       return this.nTimeAllowed;
  149.    }
  150.    function set TimeTaken(__nTimeTaken)
  151.    {
  152.       this.nTimeTaken = __nTimeTaken;
  153.    }
  154.    function get TimeTaken()
  155.    {
  156.       return this.nTimeTaken;
  157.    }
  158.    function set MiniStones(__nMiniStones)
  159.    {
  160.       this.nMiniStones = __nMiniStones;
  161.    }
  162.    function get MiniStones()
  163.    {
  164.       return this.nMiniStones;
  165.    }
  166.    function get Score()
  167.    {
  168.       return this.getScore();
  169.    }
  170.    function getScore()
  171.    {
  172.       var _loc2_ = 0;
  173.       if(this.Completed)
  174.       {
  175.          _loc2_ += BaseLevelData.POINTS_BASE;
  176.          _loc2_ += Math.min(this.CollectedMS,this.RequiredMS) * BaseLevelData.POINTS_PER_MS_BASE;
  177.          _loc2_ += Math.max(this.CollectedMS - this.RequiredMS,0) * BaseLevelData.POINTS_PER_MS_OVER;
  178.          _loc2_ += Math.floor((this.TimeAllowed - this.TimeTaken) * BaseLevelData.POINTS_PER_MILLISECOND_REMAINING);
  179.          _loc2_ += this.MiniStones * BaseLevelData.POINTS_PER_MINISTONES;
  180.       }
  181.       return _loc2_;
  182.    }
  183. }
  184.